Skip to content

Report errors to Home Assistant - #47

Merged
JanPetterMG merged 11 commits into
mainfrom
feat/error-reporting
Sep 10, 2026
Merged

Report errors to Home Assistant#47
JanPetterMG merged 11 commits into
mainfrom
feat/error-reporting

Conversation

@JanPetterMG

Copy link
Copy Markdown
Contributor

Enhance error reporting by sending various communication errors, including desk initialization and UART errors, to Home Assistant for better diagnostics.

… any Console/LIN UART errors and node errors.
@JanPetterMG JanPetterMG added enhancement New feature or request avr esp labels Sep 8, 2026
@JanPetterMG JanPetterMG added this to the v1.0.0 milestone Sep 8, 2026
@coderabbitai

coderabbitai Bot commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

Review Change StackReview Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 519a4d8c-1ef7-482d-8de3-67c95ef40353

📥 Commits

Reviewing files that changed from the base of the PR and between d29eed0 and 2794aaa.

📒 Files selected for processing (2)
  • include/avr/ControllerService.h
  • src/avr/ControllerService.cpp

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.

📜 Recent review details
🔇 Additional comments (2)
include/avr/ControllerService.h (1)

49-50: LGTM!

src/avr/ControllerService.cpp (1)

70-71: LGTM!

Also applies to: 74-74, 82-82, 88-89, 91-92, 95-95, 103-103, 109-110, 112-112


Summary by CodeRabbit

  • New Features

    • Added detailed communication, initialization, node, and serial error reporting to desk diagnostics.
    • Added an “Errors” diagnostic sensor for Home Assistant.
    • Diagnostic data now includes node status and communication errors.
  • Bug Fixes

    • Improved detection and reporting of serial communication errors.
    • Corrected node state and position updates during controller communication.
  • Documentation

    • Updated the Home Assistant diagnostics table with error details.
    • Removed the AVR firmware version from the diagnostics table.

Walkthrough

Changes

The AVR and ESP firmware now transmit, store, decode, and expose communication errors. LIN probing and node polling use updated APIs. Home Assistant diagnostics now include the error list. The clang tidy workflow uses a stricter failure threshold.

Communication error reporting

Layer / File(s) Summary
AVR error transport
include/avr/..., src/avr/...
AVR console states and LIN handling now transmit UART and LIN error flags. Node polling uses the updated LIN API.
ESP error state and protocol handling
include/esp/..., src/esp/...
The ESP parser records communication errors. DeskService stores error flags, clears them on node updates, and serializes decoded errors.
Diagnostics exposure
src/esp/HomeAssistantHandler.cpp, README.md
Home Assistant discovery and documentation define the Errors diagnostic.

Clang analysis threshold

Layer / File(s) Summary
Tidy failure threshold
.github/workflows/clang.yml
The tidy job fails when more than one check fails.

Merge Risk: 🔵 Low · up to 2794a

This change adds communication-error diagnostics for Home Assistant. An open initialization-path concern could cause the controller to stall under continuous LIN traffic, so it should be addressed or explicitly accepted before merge.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed Docstring coverage is 88.68% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 53 functions across 11 files.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly and concisely describes the primary change: reporting errors to Home Assistant.
Description check ✅ Passed The description directly explains the error-reporting changes and their purpose in Home Assistant diagnostics.
✨ Finishing Touches
📝 Generate docstrings
✨ Simplify code
  • Create PR with simplified code
  • Commit simplified code in branch feat/error-reporting

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@JanPetterMG
JanPetterMG marked this pull request as ready for review September 8, 2026 22:35
Copilot AI lite review requested due to automatic review settings September 8, 2026 22:35
@chatgpt-codex-connector

This comment was marked as off-topic.

This comment was marked as off-topic.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3


ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 69e87a79-6d98-4fa0-8470-591d02ba98b2

📥 Commits

Reviewing files that changed from the base of the PR and between e3c92b6 and d4cdbe2.

📒 Files selected for processing (12)
  • .github/workflows/clang.yml
  • README.md
  • include/avr/ConsoleHandler.h
  • include/avr/LegHandler.h
  • include/esp/ConsoleHandler.h
  • include/esp/DeskService.h
  • src/avr/ConsoleHandler.cpp
  • src/avr/ControllerService.cpp
  • src/avr/LegHandler.cpp
  • src/esp/ConsoleHandler.cpp
  • src/esp/DeskService.cpp
  • src/esp/HomeAssistantHandler.cpp

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.

📜 Review details
🔇 Additional comments (13)
.github/workflows/clang.yml (1)

134-134: LGTM!

include/avr/LegHandler.h (1)

31-31: LGTM!

Also applies to: 93-98, 122-145

src/avr/ControllerService.cpp (1)

75-83: LGTM!

Also applies to: 97-105

src/avr/LegHandler.cpp (1)

5-5: LGTM!

Also applies to: 122-122

README.md (1)

199-212: LGTM!

include/esp/ConsoleHandler.h (1)

25-27: LGTM!

include/esp/DeskService.h (1)

18-30: LGTM!

Also applies to: 109-123

src/esp/ConsoleHandler.cpp (2)

91-117: LGTM!


182-186: LGTM!

src/esp/DeskService.cpp (3)

272-273: LGTM!


374-429: LGTM!


769-784: LGTM!

src/esp/HomeAssistantHandler.cpp (1)

310-319: LGTM!

Comment thread include/avr/ConsoleHandler.h
Comment thread src/esp/DeskService.cpp Outdated
Comment thread src/esp/DeskService.cpp Outdated
@coderabbitai

coderabbitai Bot commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

Note

Docstrings generation - SUCCESS
Generated docstrings for this pull request at #48

coderabbitai Bot added a commit that referenced this pull request Sep 8, 2026
Docstrings generation was requested by @JanPetterMG.

* #47 (comment)

The following files were modified:

* `include/avr/LegHandler.h`
* `include/esp/ConsoleHandler.h`
* `src/avr/ConsoleHandler.cpp`
* `src/esp/ConsoleHandler.cpp`
* `src/esp/DeskService.cpp`
* `src/esp/HomeAssistantHandler.cpp`

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 5


ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: c23928f9-b93b-4b21-9215-7a88dc11d4e0

📥 Commits

Reviewing files that changed from the base of the PR and between d4cdbe2 and 95ae332.

📒 Files selected for processing (7)
  • include/avr/LegHandler.h
  • include/esp/DeskService.h
  • src/avr/ConsoleHandler.cpp
  • src/avr/ControllerService.cpp
  • src/avr/LegHandler.cpp
  • src/esp/ConsoleHandler.cpp
  • src/esp/DeskService.cpp
🚧 Files skipped from review as they are similar to previous changes (1)
  • src/avr/ConsoleHandler.cpp

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.

📜 Review details
⏰ Context from checks skipped due to timeout. (2)
  • GitHub Check: Minimal (esp32-c6-zero-b)
  • GitHub Check: Full (esp32-c6-zero-b)
⚠️ CI failures not shown inline (7)

GitHub Actions: Clang / 0_Tidy (esp32-c6-zero-b).txt: Report errors to Home Assistant

Conclusion: failure

View job details

##[group]Run cat <<'EOL' > include/esp/secrets.h
 �[36;1mcat <<'EOL' > include/esp/secrets.h�[0m
 �[36;1m#pragma once�[0m
 �[36;1m#ifdef ARDUINO_ARCH_ESP32�[0m
 �[36;1m#define HOSTNAME "bekant"�[0m
 �[36;1m#define MQTT_HOST "localhost"�[0m
 �[36;1m#define MQTT_KEY "redacted"�[0m
 �[36;1m#define MQTT_USER "redacted"�[0m
 �[36;1m#define NAME "Bekant"�[0m
 �[36;1m#define OTA_KEY "redacted"�[0m
 �[36;1m#define PIN_ADC 1�[0m
 �[36;1m#define PIN_LED 2�[0m
 �[36;1m#define PIN_MISO 3�[0m
 �[36;1m#define PIN_MOSI 4�[0m
 �[36;1m#define PIN_OE 5�[0m
 �[36;1m#define PIN_RST 6�[0m
 �[36;1m#define PIN_SCK 7�[0m
 �[36;1m#define PIN_TPDN 8�[0m
 �[36;1m#define PIN_TPUP 9�[0m
 �[36;1m#define WIFI_KEY "redacted"�[0m
 �[36;1m#define WIFI_SSID "redacted"�[0m
 �[36;1m#endif // ARDUINO_ARCH_ESP32�[0m
 �[36;1mEOL�[0m
 �[36;1muv run pio run -t compiledb -e "$PIO_ENVIRONMENT"�[0m
 shell: /usr/bin/bash -e {0}
 env:
   UV_PYTHON_INSTALL_DIR: /home/runner/work/_temp/uv-python-dir
   UV_PYTHON: 3.11
   UV_CACHE_DIR: /home/runner/work/_temp/setup-uv-cache
   PIO_ENVIRONMENT: esp32-c6-zero-b
 ##[endgroup]
 Downloading cpython-3.11.15-linux-x86_64-gnu (download) (29.5MiB)
  Downloaded cpython-3.11.15-linux-x86_64-gnu (download)
 Using CPython 3.11.15
 Creating virtual environment at: .venv
 Installed 22 packages in 15ms
 ********************************************************************************
 If you like PlatformIO, please:
 - star it on GitHub > https://github.com/platformio/platformio-core
 - follow us on LinkedIn to stay up-to-date on the latest project news > https://www.linkedin.com/company/platformio/
 - try PlatformIO IDE for embedded development > https://platformio.org/platformio-ide
 ********************************************************************************
 Processing esp32-c6-zero-b (board: esp32-c6-devkitm-1; platform: https://api.github.com/repos/pioarduino/platform-espressif32/tarball/55.03.311; framework: arduino)
 --------------------------------------------------...

GitHub Actions: Clang / Tidy (esp32-c6-zero-b): Report errors to Home Assistant

Conclusion: failure

View job details

##[group]Run cat <<'EOL' > include/esp/secrets.h
 �[36;1mcat <<'EOL' > include/esp/secrets.h�[0m
 �[36;1m#pragma once�[0m
 �[36;1m#ifdef ARDUINO_ARCH_ESP32�[0m
 �[36;1m#define HOSTNAME "bekant"�[0m
 �[36;1m#define MQTT_HOST "localhost"�[0m
 �[36;1m#define MQTT_KEY "redacted"�[0m
 �[36;1m#define MQTT_USER "redacted"�[0m
 �[36;1m#define NAME "Bekant"�[0m
 �[36;1m#define OTA_KEY "redacted"�[0m
 �[36;1m#define PIN_ADC 1�[0m
 �[36;1m#define PIN_LED 2�[0m
 �[36;1m#define PIN_MISO 3�[0m
 �[36;1m#define PIN_MOSI 4�[0m
 �[36;1m#define PIN_OE 5�[0m
 �[36;1m#define PIN_RST 6�[0m
 �[36;1m#define PIN_SCK 7�[0m
 �[36;1m#define PIN_TPDN 8�[0m
 �[36;1m#define PIN_TPUP 9�[0m
 �[36;1m#define WIFI_KEY "redacted"�[0m
 �[36;1m#define WIFI_SSID "redacted"�[0m
 �[36;1m#endif // ARDUINO_ARCH_ESP32�[0m
 �[36;1mEOL�[0m
 �[36;1muv run pio run -t compiledb -e "$PIO_ENVIRONMENT"�[0m
 shell: /usr/bin/bash -e {0}
 env:
   UV_PYTHON_INSTALL_DIR: /home/runner/work/_temp/uv-python-dir
   UV_PYTHON: 3.11
   UV_CACHE_DIR: /home/runner/work/_temp/setup-uv-cache
   PIO_ENVIRONMENT: esp32-c6-zero-b
 ##[endgroup]
 Downloading cpython-3.11.15-linux-x86_64-gnu (download) (29.5MiB)
  Downloaded cpython-3.11.15-linux-x86_64-gnu (download)
 Using CPython 3.11.15
 Creating virtual environment at: .venv
 Installed 22 packages in 15ms
 ********************************************************************************
 If you like PlatformIO, please:
 - star it on GitHub > https://github.com/platformio/platformio-core
 - follow us on LinkedIn to stay up-to-date on the latest project news > https://www.linkedin.com/company/platformio/
 - try PlatformIO IDE for embedded development > https://platformio.org/platformio-ide
 ********************************************************************************
 Processing esp32-c6-zero-b (board: esp32-c6-devkitm-1; platform: https://api.github.com/repos/pioarduino/platform-espressif32/tarball/55.03.311; framework: arduino)
 --------------------------------------------------...

GitHub Actions: Clang / 1_Tidy (attiny841).txt: Report errors to Home Assistant

Conclusion: failure

View job details

##[group]Run let action_path = $env.GITHUB_ACTION_PATH | path expand
 �[36;1mlet action_path = $env.GITHUB_ACTION_PATH | path expand�[0m
 �[36;1m$env.UV_INSTALL_DIR = $action_path | path join 'bin'�[0m
 �[36;1m�[0m
 �[36;1m$env.UV_CACHE_DIR = $env.RUNNER_TEMP | path join 'cpp-linter-action-cache'�[0m
 �[36;1mif (not ($env.UV_CACHE_DIR | path exists)) {�[0m
 �[36;1m  mkdir $env.UV_CACHE_DIR�[0m
 �[36;1m}�[0m
 �[36;1m�[0m
 �[36;1mprint $"\n(ansi purple)Installing uv version ($env.UV_VERSION)(ansi reset)"�[0m
 �[36;1mlet is_windows = (version | get "build_os") | str starts-with "windows"�[0m
 �[36;1mlet uv_installer_url = if $is_windows {�[0m
 �[36;1m  $"https://astral.sh/uv/($env.UV_VERSION)/install.ps1"�[0m
 �[36;1m} else {�[0m
 �[36;1m  $"https://astral.sh/uv/($env.UV_VERSION)/install.sh"�[0m
 �[36;1m}�[0m
 �[36;1mlet installer = http get --raw --redirect-mode follow $uv_installer_url�[0m
 �[36;1mif $is_windows {�[0m
 �[36;1m  ^powershell -ExecutionPolicy ByPass $installer�[0m
 �[36;1m} else {�[0m
 �[36;1m  $installer | ^sh�[0m
 �[36;1m}�[0m
 �[36;1m�[0m
 �[36;1mlet gh_action_debug = $env | get --optional 'ACTIONS_STEP_DEBUG'�[0m
 �[36;1mlet action_verbosity = 'info' == 'debug'�[0m
 �[36;1mlet verbosity = (�[0m
 �[36;1m  $action_verbosity�[0m
 �[36;1m  or ($gh_action_debug == true)�[0m
 �[36;1m  or ($gh_action_debug == 'true')�[0m
 �[36;1m)�[0m
 �[36;1m�[0m
 �[36;1mprint $"\n(ansi purple)Installing workflow dependencies(ansi reset)"�[0m
 �[36;1mmut uv_args = [sync --project $action_path --group action --no-dev --link-mode=copy]�[0m
 �[36;1mif $verbosity {�[0m
 �[36;1m  $uv_args = $uv_args | append '-v'�[0m
 �[36;1m}�[0m
 �[36;1m^$'($env.UV_INSTALL_DIR)/uv' ...$uv_args�[0m
 �[36;1m�[0m
 �[36;1mlet version_str = '21'�[0m
 �[36;1mif ($version_str | is-empty) {�[0m
 �[36;1m  print $"(ansi yellow)Using platform default clang tools \(version not specified)(ansi reset)"�[0m
 �[36;1m  exit 0�[0m
 �[36;1m}�[0m
 �[36;1mlet version = try {�[0m
 �[36;1m  $version_str | into ...

GitHub Actions: Clang / Tidy (attiny841): Report errors to Home Assistant

Conclusion: failure

View job details

##[group]Run let action_path = $env.GITHUB_ACTION_PATH | path expand
 �[36;1mlet action_path = $env.GITHUB_ACTION_PATH | path expand�[0m
 �[36;1m$env.UV_INSTALL_DIR = $action_path | path join 'bin'�[0m
 �[36;1m�[0m
 �[36;1m$env.UV_CACHE_DIR = $env.RUNNER_TEMP | path join 'cpp-linter-action-cache'�[0m
 �[36;1mif (not ($env.UV_CACHE_DIR | path exists)) {�[0m
 �[36;1m  mkdir $env.UV_CACHE_DIR�[0m
 �[36;1m}�[0m
 �[36;1m�[0m
 �[36;1mprint $"\n(ansi purple)Installing uv version ($env.UV_VERSION)(ansi reset)"�[0m
 �[36;1mlet is_windows = (version | get "build_os") | str starts-with "windows"�[0m
 �[36;1mlet uv_installer_url = if $is_windows {�[0m
 �[36;1m  $"https://astral.sh/uv/($env.UV_VERSION)/install.ps1"�[0m
 �[36;1m} else {�[0m
 �[36;1m  $"https://astral.sh/uv/($env.UV_VERSION)/install.sh"�[0m
 �[36;1m}�[0m
 �[36;1mlet installer = http get --raw --redirect-mode follow $uv_installer_url�[0m
 �[36;1mif $is_windows {�[0m
 �[36;1m  ^powershell -ExecutionPolicy ByPass $installer�[0m
 �[36;1m} else {�[0m
 �[36;1m  $installer | ^sh�[0m
 �[36;1m}�[0m
 �[36;1m�[0m
 �[36;1mlet gh_action_debug = $env | get --optional 'ACTIONS_STEP_DEBUG'�[0m
 �[36;1mlet action_verbosity = 'info' == 'debug'�[0m
 �[36;1mlet verbosity = (�[0m
 �[36;1m  $action_verbosity�[0m
 �[36;1m  or ($gh_action_debug == true)�[0m
 �[36;1m  or ($gh_action_debug == 'true')�[0m
 �[36;1m)�[0m
 �[36;1m�[0m
 �[36;1mprint $"\n(ansi purple)Installing workflow dependencies(ansi reset)"�[0m
 �[36;1mmut uv_args = [sync --project $action_path --group action --no-dev --link-mode=copy]�[0m
 �[36;1mif $verbosity {�[0m
 �[36;1m  $uv_args = $uv_args | append '-v'�[0m
 �[36;1m}�[0m
 �[36;1m^$'($env.UV_INSTALL_DIR)/uv' ...$uv_args�[0m
 �[36;1m�[0m
 �[36;1mlet version_str = '21'�[0m
 �[36;1mif ($version_str | is-empty) {�[0m
 �[36;1m  print $"(ansi yellow)Using platform default clang tools \(version not specified)(ansi reset)"�[0m
 �[36;1m  exit 0�[0m
 �[36;1m}�[0m
 �[36;1mlet version = try {�[0m
 �[36;1m  $version_str | into ...

GitHub Actions: Clang / Tidy (attiny841): Report errors to Home Assistant

Conclusion: failure

View job details

##[group]Run echo "Status: 12 checks failed, threshold for success is 1."
 �[36;1mecho "Status: 12 checks failed, threshold for success is 1."�[0m
 �[36;1mecho "Clang report:"�[0m
 �[36;1mif [ -n "47" ]; then�[0m
 �[36;1m  echo "https://github.com/VIPnytt/Bekant/actions/runs/34408408719?pr=47"�[0m
 �[36;1melse�[0m
 �[36;1m  echo "https://github.com/VIPnytt/Bekant/actions/runs/34408408719"�[0m
 �[36;1mfi�[0m
 �[36;1mexit $(( 12 > 1 ))�[0m
 shell: /usr/bin/bash -e {0}
 env:
   UV_PYTHON_INSTALL_DIR: /home/runner/work/_temp/uv-python-dir
   UV_PYTHON: 3.11
   UV_CACHE_DIR: /home/runner/work/_temp/setup-uv-cache
   clang-threshold: 1
 ##[endgroup]
 Status: 12 checks failed, threshold for success is 1.
 Clang report:
 https://github.com/VIPnytt/Bekant/actions/runs/34408408719?pr=47
 ##[error]Process completed with exit code 1.

GitHub Actions: Clang / 2_Format.txt: Report errors to Home Assistant

Conclusion: failure

View job details

##[group]Run let action_path = $env.GITHUB_ACTION_PATH | path expand
 �[36;1mlet action_path = $env.GITHUB_ACTION_PATH | path expand�[0m
 �[36;1m$env.UV_INSTALL_DIR = $action_path | path join 'bin'�[0m
 �[36;1m�[0m
 �[36;1m$env.UV_CACHE_DIR = $env.RUNNER_TEMP | path join 'cpp-linter-action-cache'�[0m
 �[36;1mif (not ($env.UV_CACHE_DIR | path exists)) {�[0m
 �[36;1m  mkdir $env.UV_CACHE_DIR�[0m
 �[36;1m}�[0m
 �[36;1m�[0m
 �[36;1mprint $"\n(ansi purple)Installing uv version ($env.UV_VERSION)(ansi reset)"�[0m
 �[36;1mlet is_windows = (version | get "build_os") | str starts-with "windows"�[0m
 �[36;1mlet uv_installer_url = if $is_windows {�[0m
 �[36;1m  $"https://astral.sh/uv/($env.UV_VERSION)/install.ps1"�[0m
 �[36;1m} else {�[0m
 �[36;1m  $"https://astral.sh/uv/($env.UV_VERSION)/install.sh"�[0m
 �[36;1m}�[0m
 �[36;1mlet installer = http get --raw --redirect-mode follow $uv_installer_url�[0m
 �[36;1mif $is_windows {�[0m
 �[36;1m  ^powershell -ExecutionPolicy ByPass $installer�[0m
 �[36;1m} else {�[0m
 �[36;1m  $installer | ^sh�[0m
 �[36;1m}�[0m
 �[36;1m�[0m
 �[36;1mlet gh_action_debug = $env | get --optional 'ACTIONS_STEP_DEBUG'�[0m
 �[36;1mlet action_verbosity = 'info' == 'debug'�[0m
 �[36;1mlet verbosity = (�[0m
 �[36;1m  $action_verbosity�[0m
 �[36;1m  or ($gh_action_debug == true)�[0m
 �[36;1m  or ($gh_action_debug == 'true')�[0m
 �[36;1m)�[0m
 �[36;1m�[0m
 �[36;1mprint $"\n(ansi purple)Installing workflow dependencies(ansi reset)"�[0m
 �[36;1mmut uv_args = [sync --project $action_path --group action --no-dev --link-mode=copy]�[0m
 �[36;1mif $verbosity {�[0m
 �[36;1m  $uv_args = $uv_args | append '-v'�[0m
 �[36;1m}�[0m
 �[36;1m^$'($env.UV_INSTALL_DIR)/uv' ...$uv_args�[0m
 �[36;1m�[0m
 �[36;1mlet version_str = '21'�[0m
 �[36;1mif ($version_str | is-empty) {�[0m
 �[36;1m  print $"(ansi yellow)Using platform default clang tools \(version not specified)(ansi reset)"�[0m
 �[36;1m  exit 0�[0m
 �[36;1m}�[0m
 �[36;1mlet version = try {�[0m
 �[36;1m  $version_str | into ...

GitHub Actions: Clang / Format: Report errors to Home Assistant

Conclusion: failure

View job details

##[group]Run let action_path = $env.GITHUB_ACTION_PATH | path expand
 �[36;1mlet action_path = $env.GITHUB_ACTION_PATH | path expand�[0m
 �[36;1m$env.UV_INSTALL_DIR = $action_path | path join 'bin'�[0m
 �[36;1m�[0m
 �[36;1m$env.UV_CACHE_DIR = $env.RUNNER_TEMP | path join 'cpp-linter-action-cache'�[0m
 �[36;1mif (not ($env.UV_CACHE_DIR | path exists)) {�[0m
 �[36;1m  mkdir $env.UV_CACHE_DIR�[0m
 �[36;1m}�[0m
 �[36;1m�[0m
 �[36;1mprint $"\n(ansi purple)Installing uv version ($env.UV_VERSION)(ansi reset)"�[0m
 �[36;1mlet is_windows = (version | get "build_os") | str starts-with "windows"�[0m
 �[36;1mlet uv_installer_url = if $is_windows {�[0m
 �[36;1m  $"https://astral.sh/uv/($env.UV_VERSION)/install.ps1"�[0m
 �[36;1m} else {�[0m
 �[36;1m  $"https://astral.sh/uv/($env.UV_VERSION)/install.sh"�[0m
 �[36;1m}�[0m
 �[36;1mlet installer = http get --raw --redirect-mode follow $uv_installer_url�[0m
 �[36;1mif $is_windows {�[0m
 �[36;1m  ^powershell -ExecutionPolicy ByPass $installer�[0m
 �[36;1m} else {�[0m
 �[36;1m  $installer | ^sh�[0m
 �[36;1m}�[0m
 �[36;1m�[0m
 �[36;1mlet gh_action_debug = $env | get --optional 'ACTIONS_STEP_DEBUG'�[0m
 �[36;1mlet action_verbosity = 'info' == 'debug'�[0m
 �[36;1mlet verbosity = (�[0m
 �[36;1m  $action_verbosity�[0m
 �[36;1m  or ($gh_action_debug == true)�[0m
 �[36;1m  or ($gh_action_debug == 'true')�[0m
 �[36;1m)�[0m
 �[36;1m�[0m
 �[36;1mprint $"\n(ansi purple)Installing workflow dependencies(ansi reset)"�[0m
 �[36;1mmut uv_args = [sync --project $action_path --group action --no-dev --link-mode=copy]�[0m
 �[36;1mif $verbosity {�[0m
 �[36;1m  $uv_args = $uv_args | append '-v'�[0m
 �[36;1m}�[0m
 �[36;1m^$'($env.UV_INSTALL_DIR)/uv' ...$uv_args�[0m
 �[36;1m�[0m
 �[36;1mlet version_str = '21'�[0m
 �[36;1mif ($version_str | is-empty) {�[0m
 �[36;1m  print $"(ansi yellow)Using platform default clang tools \(version not specified)(ansi reset)"�[0m
 �[36;1m  exit 0�[0m
 �[36;1m}�[0m
 �[36;1mlet version = try {�[0m
 �[36;1m  $version_str | into ...
🔇 Additional comments (3)
include/avr/LegHandler.h (1)

34-39: LGTM!

Also applies to: 72-83, 131-150

include/esp/DeskService.h (1)

26-28: LGTM!

Also applies to: 109-115

src/esp/ConsoleHandler.cpp (1)

96-98: 🗄️ Data Integrity & Integration

No change required. The AVR and ESP State enumerators have matching values. No lastError member or references remain; onReceiveError only logs the hardware error.

Comment thread src/avr/ControllerService.cpp Outdated
Comment thread src/avr/LegHandler.cpp Outdated
Comment thread src/avr/LegHandler.cpp
Comment thread src/esp/DeskService.cpp
Comment thread src/esp/DeskService.cpp Outdated
@JanPetterMG
JanPetterMG marked this pull request as draft September 9, 2026 21:55

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2


ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: ce937cba-71f3-4079-b45f-07f2b766796c

📥 Commits

Reviewing files that changed from the base of the PR and between 95ae332 and a11cebf.

📒 Files selected for processing (9)
  • include/avr/ControllerService.h
  • include/avr/LegHandler.h
  • include/esp/ConsoleHandler.h
  • include/esp/DeskService.h
  • src/avr/ConsoleHandler.cpp
  • src/avr/ControllerService.cpp
  • src/avr/LegHandler.cpp
  • src/esp/ConsoleHandler.cpp
  • src/esp/DeskService.cpp

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.

📜 Review details
⏰ Context from checks skipped due to timeout. (3)
  • GitHub Check: Minimal (esp32-c6-zero-b)
  • GitHub Check: Full (esp32-c6-zero-b)
  • GitHub Check: Tidy (esp32-c6-zero-b)
🔇 Additional comments (4)
include/avr/ControllerService.h (1)

69-69: LGTM!

include/avr/LegHandler.h (1)

27-33: LGTM!

Also applies to: 35-46, 61-63, 74-90, 101-106, 116-121, 124-135, 138-157

src/avr/ConsoleHandler.cpp (1)

18-18: LGTM!

Also applies to: 98-98

src/avr/LegHandler.cpp (1)

15-15: LGTM!

Also applies to: 27-31, 36-46, 59-60, 65-76, 89-106, 109-120, 143-143, 151-161, 170-191

Comment thread src/esp/ConsoleHandler.cpp Outdated
Comment thread src/esp/ConsoleHandler.cpp
@coderabbitai

coderabbitai Bot commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

🤖 Completed: Generate docstrings for PR #47View PR #50

@JanPetterMG
JanPetterMG marked this pull request as ready for review September 10, 2026 00:58
@chatgpt-codex-connector

This comment was marked as off-topic.

@JanPetterMG

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Sep 10, 2026

Copy link
Copy Markdown
Contributor
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@JanPetterMG
JanPetterMG added this pull request to the merge queue Sep 10, 2026
Merged via the queue into main with commit 0485a7e Sep 10, 2026
15 checks passed
@JanPetterMG
JanPetterMG deleted the feat/error-reporting branch September 10, 2026 02:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

avr enhancement New feature or request esp

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants